#include <iostream>
#include <string>
#include<fstream>
#include "CL_News_pool.h"
#include "fltkwindows.h"
#include<Poco/Timestamp.h>
#include<Poco/DateTimeParser.h>
#include "Poco/DateTimeFormatter.h"
#include <FL/Fl.H>
#include <FL/Fl_Window.H>
#include <FL/Fl_Box.H>

using namespace std;

int main(int argc, char* argv[])
{

    if(argc!=2)
    {
        std::cout <<
                  "List of RSS URLs has to be supplied in a file with one URL per line: rssreader <filename>";
        return 1;
    }
    CL_News_pool* np=CL_News_pool::get_news_pool_pointer();
    std::ifstream file(argv[1]);
    if(!file.is_open())
    {
        return 2;
    };

    while(!file.eof())
    {
        std::string s;
        file >> s;
        if(s=="")continue;
        np->add_source_url(s);
    }
    screensaverwindow ssw(argc, argv);


//    Fl_Window *window;
//    newstextwindow *box, *box2;
//
//    window = new Fl_Window (300, 180, "This is me");
//    window->fullscreen();
//    box = new newstextwindow (20, 40, 500, 500);
//    box->box (FL_UP_BOX);
//    box->labelsize (36);
//    box->labelfont (FL_BOLD+FL_ITALIC);
//    box->labeltype (FL_SHADOW_LABEL);
//
//    box2 = new newstextwindow (520, 40, 500, 100);
//    box2->box (FL_UP_BOX);
//    box2->labelsize (36);
//    box2->labelfont (FL_BOLD+FL_ITALIC);
//    box2->labeltype (FL_SHADOW_LABEL);
//    window->end ();
//    window->show (argc, argv);

    (Fl::run());


//    unsigned int t=5;
//    for(;;)
//    {
//        CL_News n = np.old_news_first();
//        std::cout<<std::endl;
//        std::cout<<"Channel.Titel: "<<n.channel.titel<<std::endl;
//        std::cout<<"Channel.url: "<<n.channel.url<<std::endl;
//        std::cout<<"Channel.Description: "<<n.channel.description<<std::endl;
//        std::cout<<"Channel.language: "<<n.channel.language<<std::endl;
//        std::cout<<"Channel.copyright: "<<n.channel.copyright<<std::endl;
//        Poco::Timestamp ts=Poco::Timestamp::fromEpochTime(n.channel.pubDate);
//        Poco::DateTime dateTime(ts);
//        std::cout<<"Channel.pubDate: "<<Poco::DateTimeFormatter::format(dateTime, "%e %b %Y %H:%M")<<std::endl;
//
//        std::cout<<std::endl;
//        std::cout<<"Item.Titel: "<<n.newsitem.title<<std::endl;
//        std::cout<<"Item.Description: "<<n.newsitem.description<<std::endl;
//        std::cout<<"Item.Link: "<<n.newsitem.link<<std::endl;
//        std::cout<<"Item.Author: "<<n.newsitem.author<<std::endl;
//        {
//
//            Poco::Timestamp ts=Poco::Timestamp::fromEpochTime(n.newsitem.pubDate);
//            Poco::DateTime dateTime(ts);
//            std::cout<<"Item.pubDate: "<<Poco::DateTimeFormatter::format(dateTime, "%e %b %Y %H:%M")<<std::endl;
//        }
//        t+=CL_News_pool::get_adaption_rate();
//        t=t<1?1:t;
//        t=t>100?100:t;
//        sleep(t);
//
//    }



//     cout<<endl<<endl<<"Anzahl: "<<anz<<endl;
//    cout << s1 << endl;

    return 0;
}
